背景在比较同一个数据源,是RTMP播放延迟低还是RTSP延迟低之前,我们先看看RTMP和RTSP的区别,我们知道,RTMP(Real-Time Messaging Protocol)和RTSP(Real RTMP以二进制形式传输数据,具有低延迟和高效传输的特点。RTSP:RTSP则是一种控制流媒体会话的协议,它不直接传输媒体数据本身,而是负责描述流媒体会话,并指示客户端如何获取流媒体数据。 应用范围RTMP:RTMP因其低延迟和高效传输的特点,广泛应用于需要高性能实时流媒体传输的场景,如直播、视频聊天等。 ,用我们的RTMP推送、轻量级RTSP服务、RTMP|RTSP播放器,延迟基本上相差无几,可见,配好的推拉流服务模块,尤其关键。 单就延迟来看,如果好的RTMP或RTSP播放,二者差异不大,主要是看实际场景。以上是大概的比较,感兴趣的开发者,可以单独跟我沟通探讨。
技术背景 实际上,我们在2015年做Android平台RTSP、RTMP播放模块的时候,第一版就支持了多实例播放,因为SDK设计比较灵活,做个简单的player实例封装即可实现多实例播放(Android 1 : 0); //设置RTSP超时时间 int rtsp_timeout = 10; lib_player_.SmartPlayerSetRTSPTimeout(handle, rtsp_timeout ); //设置RTSP TCP/UDP模式自动切换 int is_auto_switch_tcp_udp = 1; lib_player_.SmartPlayerSetRTSPAutoSwitchTcpUdp 、RTMP播放器海康实现播放缓冲设置、软硬解码设置、实时快照、实时音量调节、实时解码后数据回调等。 毫秒级延迟,完全满足对延迟、稳定性要求苛刻的场景下。感兴趣的开发者,可以单独和我沟通。
好多开发者在QT环境下实现RTMP或RTSP播放时,首先考虑到的是集成VLC,集成后,却发现VLC在延迟、断网重连、稳定性等各个方面不尽人意,无法满足上线环境需求。 本文以调用大牛直播SDK(官方)的Windows平台播放端SDK为例,介绍下如何在QT下实现低延迟的RTMP|RTSP播放器,废话不多说,先上图: QTPlayer.png 大牛直播SDK有MFC的demo OpenPlayerHandle(url, is_rtsp_tcp_mode, is_mute)) return false; player_api_->SetBuffer(player_handle play->OnWindowSize(widgets.at(i)->width(), widgets.at(i)->height()); } } } 以上是QT环境下集成个低延迟的 RTMP、RTSP播放的基本流程,感兴趣的开发者可酌情参考。
实现RTSP摄像头数据转RTMP推送到服务器,可以用第三方库或者工具实现,总体设计架构如下:图片一个好的转发模块,首先要低延迟! 其次足够稳定、灵活、有状态反馈机制、资源占用低,跨平台,最好以接口形式提供,便于第三方系统集成,整体功能设计如下:1. 拉流:通过RTSP直播播放SDK的数据回调接口,拿到音视频数据;2. 转推:通过RTMP直播推送SDK的编码后数据输入接口,把回调上来的数据,传给RTMP直播推送模块,实现RTSP数据流到RTMP服务器的转发;3. 是摄像头的RTSP流地址,rtmp://[服务器地址]/[直播频道]是目标服务器的RTMP流地址。 需要确保系统具有足够的处理能力和带宽,以避免延迟或丢帧等问题。
概述与优势1.1 SDK功能特性1.1.1 支持协议与格式 支持RTMP、RTSP协议,兼容H.265、H.264视频格式及AAC、PCMA等音频格式,满足多样化播放需求。 提供RTSP TCP/UDP模式设置及自动切换功能,适应不同网络环境,确保播放稳定性。 1.1.2 性能优化特性 内置低延迟模式,可将延迟控制在毫秒级别,满足实时性要求高的场景。 低延迟播放技术实现3.1 网络优化策略3.1.1 缓冲时间设置 将缓冲时间设置在几十毫秒到几百毫秒之间,减少数据缓冲带来的延迟,同时保证播放稳定性。 4.2 低延迟关键参数配置4.2.1 网络协议优化 RTSP模式选择:默认使用UDP(NT_SP_SetRTSPTcpMode设为0)以减少握手延迟,若网络不稳定则开启TCP/UDP自动切换(NT_SP_SetRtspAutoSwitchTcpUdp RTSP/RTMP播放器,适用于VR、安防、直播等高实时性场景。
如果需要浏览器场景下有更好的兼容性,对于RTSP流来说,好多公司通常的做法是把RTSP转RTMP,然后分发到RTMP服务器,然后服务器转http-flv出来,浏览器直接播放http-flv流,或者直接播放 本文基于大牛直播SDK https://github.com/daniulive/SmarterStreaming 现有RTSP、RTMP播放接口的基础上,二次封装,扩展了ocx控件,用于IE浏览器下的低延迟 RTMP或RTSP播放,支持RTMP/RTSP H.265(hevc)播放。 ULONG NT_SetLowLatencyMode(LONG mode); 设置是否低延迟模式播放; 13. OpenPlayer(); } var obj = document.getElementById("SmartPlayerActiveX"); //设置是否启用低延迟模式
在Unity3D平台上实现全景实时RTMP或RTSP流渲染,可以通过以下方式:获取全景视频数据源:首先,需要拉取RTMP或RTSP流数据,解码后,把RGB或YUV数据,回调到unity,从而获取到全景视频流数据 技术实现图片本文以大牛直播SDK的RTMP推送端作为数据采集,获取全景窗体数据后,编码打包推送到RTMP服务,或启动个轻量级RTSP服务,对外提供个RTSP的拉流URL。 然后,播放端,拉取RTSP或RTMP的URL,把YUV或RGB数据回调上来,然后,再在Unity窗体绘制出来。 1 : 0); //设置是否启用低延迟模式 //设置旋转角度(设置0, 90, 180, 270度有效,其他值无效) int rotate_degrees = 0; 与此同时,Unity全景实时播放,需要有非常高的延迟要求和性能要求,特别是全景数据源,分辨率和码率都非常高,对解码效率和解码后的数据拷贝投递,提了更高的要求。
这也是为什么,超低延迟的 RTSP/RTMP 播放器不再是“播放器里的一个配置项”,而是具身智能和低空经济里那条“看不见但最关键”的基础设施。 因此,在具身智能和低空经济的很多项目里,RTSP 往往是设备端最先稳定下来的那一条输出链路。2. 所以,一个真正可用的低延迟 RTSP/RTMP 播放器,不再是“选项”,而是整个链路的关键一环。三、“超低延迟播放器”到底难在哪里? 一个典型的具身智能 / 低空经济项目,如果用到大牛直播SDK 的 RTSP/RTMP 播放器,通常会有这样的集成方式(高层设计): 终端/设备端 摄像头 → H.264/H.265 编码 → RTSP 这一套下来,你并不需要从零实现一个跨平台、支持各种奇葩码流的低延迟播放器,而是: 直接把“超低延迟 RTSP/RTMP 播放模块”当一个能力块嵌进去, 重点精力放在你真正要做的核心价值: 具身智能的决策策略
作为一款全自研、跨平台的低延迟音视频基础设施,它在过去十年沉淀了丰富的工程化经验,覆盖了 RTSP/RTMP 播放器、RTMP 推流、轻量级 RTSP 服务、RTSP 网关、GB28181 接入、录像/ 大牛直播SDK通过模块化能力,提供了这一“视频中枢”的技术支撑: 在 通信 场景下,RTMP 推流与 RTSP 播放器确保飞行画面和指令数据的低延迟交互; 在 导航 场景下,录像与快照模块记录飞行路径 大牛直播SDK的解决方案:RTSP 播放器和 RTMP 推流模块可将端到端延迟控制在 100–200ms;轻量级 RTSP 服务与多路转发模块支持分布式部署,结合边缘计算节点,可以在保障低延迟的同时实现大规模集群管理 在这一格局中,大牛直播SDK 作为“视频神经中枢”,将继续提供稳定、低延迟、跨平台的底层支撑,让低空经济真正具备可持续的规模化落地能力。 在这里,大牛直播SDK 发挥着“中枢神经”的作用: 低延迟传输:RTSP/RTMP 播放与推流模块,将飞行器画面和指令延迟压缩至 100–200ms,保障实时交互; 跨平台兼容:支持 Windows、
传统方式如使用摄像头采集、调用 ffmpeg 解码、使用 OpenCV 的 cv2.VideoCapture(),往往面临: ❌ 帧率不稳、延迟高; ❌ 不支持 RTSP/RTMP 等协议或兼容性差; 为了解决这一关键问题,本文引入 大牛直播SDK(Daniu Live SDK) ——一个专为高性能实时视频流接入设计的跨平台模块,支持 RTSP/RTMP 拉流、YUV/RGB 帧级回调、硬件解码与同步控制 为此,我们采用 大牛直播SDK 提供的 “YUV / RGB 回调 + 零拷贝共享” 机制,实现从 RTSP/RTMP 拉流 → 原始帧获取 → 高效送入 Python 环境的完整闭环。 技术链路RTSP摄像头 → 大牛直播SDK拉流 → YOLOv5识别人形目标 → 置信度>0.8 → 调用报警接口(如 MQTT / HTTP) 技术亮点 视频延迟 < 200ms; 实时叠加识别框 /本地流,低延迟、高稳定帧级回调层RGB/YUV 输出精准对接 Python/AI 模型,毫秒级响应图像分析层OpenCV + YOLO/Haar支持人脸识别、目标检测、行为分析等数据联动层HTTP/MQTT
在发布国产操作系统|Linux平台的RTMP|RTSP直播播放SDK之前,大牛直播SDK在Windows、Android、iOS平台已经有了非常成熟的技术积累,功能齐全、稳定性高、超低延迟、超低资源占用 、网络自动重连等,RTMP支持扩展H265播放, RTSP也支持H265播放。 Linux原生的RTSP、RTMP播放模块这里我们不做赘述,本文主要讲的是如何在Linux平台构建Unity下的RTSP和RTMP低延迟直播播放。 、RTSP播放模块,拉流解码延迟非常低,数据投递效率非常高,无图无真相:Linux平台,我们是回调的YUV的数据,也就是 NT_SP_E_VIDEO_FRAME_FROMAT_I420: 、RTSP直播播放器大概的实现参考,随着国产操作系统的推进,Linux下RTMP、RTSP高质量的播放器需求越来越大,Unity下,可以实现和Windows、Android等平台统一开发管理,非常方便。
然而,若从工程与系统的角度去审视,会发现决定低空经济能否真正落地并规模化的,并不只是飞行器本身的性能指标(如续航、载重、航程),而是其背后能否构建起低延迟、稳定、安全、跨区域协同的视频链路。 大牛直播SDK凭借全自研跨平台内核,构建了从采集、推流、传输到播放、转发的完整能力,涵盖 RTSP/RTMP 推流、超低延迟播放器、轻量级 RTSP 服务、GB28181 对接、多路转发等核心模块。 技术挑战:低延迟与高稳定的工程两难构建低空经济的视频链路,工程上存在两大突出矛盾: 延迟与稳定性的平衡: 延迟越低,对网络波动的容忍度越小;稳定性越高,往往需要牺牲时延。 SmartMediakit 的解法:模块化视频中枢大牛直播SDK(SmartMediakit)在实践中逐步沉淀出一套模块化架构,精准对应上述挑战: 超低延迟传输:RTSP/RTMP 推流模块基于自研内核 ,开源方案更多适合科研、验证或轻量级应用,而在低延迟、稳定性、跨平台、合规对接都要求极高的低空经济落地场景中,SmartMediakit 的优势非常明显。
背景我们看过了太多介绍RTSP、RTMP播放相关的技术资料,大多接口设计简约,延迟和扩展能力也受到一定的局限,好多开发者希望我们能从接口设计的角度,大概介绍下大牛直播SDK关于RTMP、RTSP播放器开发设计 ,本文以Windows平台RTMP、RTSP播放模块为例,大概介绍下常用的接口。 低延迟模式低延迟模式下,设置buffer time为0,延迟更低,适用于比如需要操控控制的超低延迟场景下。 ,这里就不再赘述,除Windows平台外,我们还同步开发了Linux、Android、iOS平台的RTSP、RTMP播放器,大多常规接口四个平台基本统一,延迟也都做到了毫秒级。 一个好的播放器,特别是要满足低延迟稳定的播放(毫秒级延迟),需要注意的点远不止如此,感兴趣的开发者,可以参考blog其他文章。
作为跨平台低延迟音视频技术基座,大牛直播SDK(SmartMediaKit) 以模块化架构和超低延迟能力,支撑教育、医疗、低空经济、智慧城市等典型场景的落地,成为新质生产力的重要底座。 RTMP 推流模块: 在“连接”时代,推流是远程观看;在“赋能”时代,低延迟 RTMP 推流让视频直接进入 AI 模型,实时实现目标识别、事件预警。 教育:AI 辅助的智能课堂 RTMP 推流:教室端低延迟传输,课程画面实时上云。 RTSP 播放器:学生端无缝接入,保障互动体验。 录像/快照:供 AI 模型分析学习行为,实现因材施教。 医疗:远程会诊与 AI 诊断 RTMP 推流:手术室高清视频 100–200ms 低延迟上云。 轻量级 RTSP 服务:画面多路分发至 AI 节点进行实时风险提示。 低空经济:无人机智能巡检与应急 RTMP 推流:弱网环境下的稳定回传。 RTSP 服务:多架无人机同时接入、集中管理。
关键词:实时音视频,RTSP/RTMP,GB28181,低延迟,低空经济,智慧医疗,AI+机器人,产业数字化一、行业背景:从红利到务实过去几年,实时音视频行业大致经历了两个阶段:1. 技术方案 RTMP 推流+低延迟播放器:实现医生间的实时交流与操作观摩。 轻量级 RTSP 服务+多路转发:支持院区之间多终端接入。 本地化部署:保证数据传输安全与合规,避免跨境隐私风险。 低空经济与无人机链路行业痛点 无人机巡检、应急救援等场景对低延迟传输依赖极高,延迟过高会导致指挥失效。 城市低空交通(eVTOL)需要统一监管和调度,但链路标准化不足。 满足城市低空经济发展中的监管与安全要求。 支撑“低空经济×AI”的新兴产业模式,推动产业规模化落地。 4. 智慧城市与安防行业痛点 城市级监控系统需要接入海量摄像头,但链路复杂、接入效率低。 技术方案 低延迟视频链路:为机器人提供实时“眼睛”,实现快速反应。 RTSP/RTMP 推流嵌入:支持多类智能硬件的交互需求。 录像+多路转发:为工业机器人远程监控与复盘提供数据支撑。
技术实现如何在VR头显实现RTMP或RTSP播放? VR头显播放RTMP或RTSP流数据,简单来说,通过jni层打通RTMP或RTSP流传输,解包并解码回调给Unity YUV或RGB数据,Unity场景下,绘制即可,本文以大牛直播SDK的Unity平台 RTMP、RTSP播放为例,介绍下具体技术实现:图片开始播放:public void Play() { if (is_running) { Debug.Log 1 : 0); //设置是否启用低延迟模式 NT_U3D_SetMute(player_handle_, is_mute_ ? 或RTSP,可实现毫秒级的延迟,可满足大多数有交互诉求的技术场景,此外,如果头显端支持硬解码的话,可以优先考虑硬解码。
背景:无人机从“作业工具”迈向“空中智能体”随着“低空经济”上升为国家新型生产力的重要载体,无人机的角色正在发生深刻转变。 ,取决于其能否构建起一个“标准化、低延迟、可编程”的空中视频感知通路。 本文将围绕其在空中智能体系统中的角色,深入剖析: 如何实现多源视频感知一体化采集 如何打通端到端的超低延迟回传链路 如何接入多平台、跨协议的可视化与调度平台 从而构建一套真正适配低空经济未来发展趋势的 低延迟链路优化:在实际部署中,端到端延迟控制在 100~250ms 区间,满足应急指挥、执法记录、异常检测等高时效性场景需求。 ⚡ 高稳定 + 可控延迟,是让视频系统具备“执行力”的关键前提。 ”在低空经济全面铺开的当下,“视频能力”已成为支撑无人系统智能化、标准化、高效化运行的关键基础设施之一。
在视频播放应用的开发中,如何有效地管理多个 RTSP|RTMP流实例是一个挑战。 尤其是在 Android 上开发高性能、低延迟的多实例 RTSP|RTMP 播放器时,涉及到资源管理、线程同步和回调事件处理等多个层面的考虑。 项目背景和需求本项目的目标是实现一个支持多个 RTSP|RTMP流播放的 Android 播放器,用户可以通过不同的界面组件(如按钮和 SurfaceView)控制多个 RTSP|RTMP播放流的启动、 播放器需要具备以下特点: 多实例管理:能够同时管理多个 RTSP|RTMP播放器实例,确保每个实例的生命周期独立。 低延迟播放:优化播放器的启动时间和播放延迟。 它包含多个 SurfaceView 和控制按钮,每个按钮控制一个 RTSP|RTMP播放流的播放和录制。它的关键任务是初始化播放器实例,处理按钮点击事件,以及更新 UI 显示。
随着VR类、游戏类场景的快速发展,开发者对Unity3d低延迟的直播需求量越来越大,前两年,大牛直播SDK发布了Windows平台、Android平台和iOS平台的Unity3d RTMP和RTSP的播放 本文以Android平台为例,我们的实现:基于大牛直播SDK现有非常成熟的native RTMP和RTSP播放模块,回调解码后的原始数据,传递给Unity3d,实现相应的绘制即可,对应demo,可以参考 url.StartsWith("rtmp://") && ! url.StartsWith("rtsp://")) { videoUrl = "rtmp://202.69.69.180:443/webcast/bshdlive-pc 1 : 0); //设置是否启用低延迟模式 NT_U3D_SetMute(player_handle_, is_mute_ ?
多协议支持:兼容 RTSP、RTMP、HTTP-FLV 等主流协议,能够适配现有 AI 平台和大模型服务。 低空经济与 eVTOL:空地一体化的视频基础设施低空经济正在成为继新能源汽车、人工智能之后的又一战略性新兴产业。 无论是农林植保、电力巡检、城市安防,还是低空物流、应急指挥,视频链路的质量直接决定了低空经济的应用价值。 多路转发与分发:内置 RTSP 转 RTMP、RTMP 转 GB28181 等模块,可以灵活对接 CDN、政企专网和应急指挥平台。 :实时感知、低延迟交互、跨平台可控。